﻿using Grpc.Core;
using MagicOnion.Server;
using RPC服务端.Common;
using System;

namespace RPC服务端
{

    /// <summary>
    /// 注意：
    /// 1.RPC客服端接口的命名空间必须和RPC服务端接口的命名空间一致。
    /// 2.RPC客服端接口的名称必须和RPC服务端接口的名称一致。
    /// 3.以上两项中的仍以一项不一致，会导致客服端访问服务端时找不到对应的接口。
    /// 4.客户端和服务端的host类型要一致，比如：客服端用的IP则服务端也得用IP，如果客服端用IP而服务端用localhost则无法访问到服务端。
    /// </summary>
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("RPC服务端已启动。。。");

            var service = MagicOnionEngine.BuildServerServiceDefinition(isReturnExceptionStackTraceInErrorDetail: true);
            var server = new global::Grpc.Core.Server
            {
                Services = { service },
                Ports = { new ServerPort("localhost", 1001, ServerCredentials.Insecure) }
            };

            server.Start();

            Console.ReadLine();
        }
    }
}
